package com.etc.service;

import com.etc.dao.CommentsDao;
import com.etc.entity.Comments;
import com.etc.entity.Comments2;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class CommentsServiceImpl implements CommentsService {
    //调用dao
    @Autowired
    CommentsDao dao;

    /**
     * 一级评论分页查询
     * 陆海
     * @param pageNum
     * @param pageSize
     * @return
     */
    @Override
    public PageInfo<Comments> getAllComs(int pageNum, int pageSize, String comId, String userName, String comText) {
        //1.开始分页
        PageHelper.startPage(pageNum, pageSize);
        //2.执行查询所有用户信息
        List<Comments> list = dao.queryAllCom(comId,userName,comText);
        //3.通过pageInfo进行包装,PageInfo包含了非常丰富的分页属性
        PageInfo<Comments> pageInfo = new PageInfo<Comments>(list);
        return pageInfo;
    }

    /**
     * 一级评论删除
     * @param comId
     * @return
     */
    @Override
    public boolean getDelCom(String comId) {
        int n=dao.delCom(comId);
        return n>0;
    }

    /**
     * 所有二级评论查询
     * @param pageNum
     * @param pageSize
     * @return
     */
    @Override
    public PageInfo<Comments2> getAllComs2(int pageNum, int pageSize, String userName, String com2Text) {
        //1.开始分页
        PageHelper.startPage(pageNum, pageSize);
        //2.执行查询所有用户信息
        List<Comments2> list = dao.queryAllComs2(userName,com2Text);
        //3.通过pageInfo进行包装,PageInfo包含了非常丰富的分页属性
        PageInfo<Comments2> pageInfo = new PageInfo<Comments2>(list);
        return pageInfo;
    }

    /**
     * 删除二级评论
     * @param com2Id
     * @return
     */
    @Override
    public boolean getDelComs2(String com2Id) {
        int n=dao.delComs2(com2Id);
        return n>0;
    }

    @Override
    public List<Comments> queryComByrtId() {
        return dao.queryComByrtId();
    }

    @Override
    public int addCom(Comments comments) {
        return dao.addCom(comments);
    }

    @Override
    public int addCom2(Comments2 comments2) {
        return dao.addCom2(comments2);
    }

    @Override
    public List<Comments> getUserCom() {
        return dao.queryUserCom();
    }

}
